| 1: | minus(n__0,Y) | → 0 | |
| 2: | minus(n__s(X),n__s(Y)) | → minus(activate(X),activate(Y)) | |
| 3: | geq(X,n__0) | → true | |
| 4: | geq(n__0,n__s(Y)) | → false | |
| 5: | geq(n__s(X),n__s(Y)) | → geq(activate(X),activate(Y)) | |
| 6: | div(0,n__s(Y)) | → 0 | |
| 7: | div(s(X),n__s(Y)) | → if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0) | |
| 8: | if(true,X,Y) | → activate(X) | |
| 9: | if(false,X,Y) | → activate(Y) | |
| 10: | 0 | → n__0 | |
| 11: | s(X) | → n__s(X) | |
| 12: | div(X1,X2) | → n__div(X1,X2) | |
| 13: | minus(X1,X2) | → n__minus(X1,X2) | |
| 14: | activate(n__0) | → 0 | |
| 15: | activate(n__s(X)) | → s(activate(X)) | |
| 16: | activate(n__div(X1,X2)) | → div(activate(X1),X2) | |
| 17: | activate(n__minus(X1,X2)) | → minus(X1,X2) | |
| 18: | activate(X) | → X | |
| 19: | MINUS(n__0,Y) | → 0# | |
| 20: | MINUS(n__s(X),n__s(Y)) | → MINUS(activate(X),activate(Y)) | |
| 21: | MINUS(n__s(X),n__s(Y)) | → ACTIVATE(X) | |
| 22: | MINUS(n__s(X),n__s(Y)) | → ACTIVATE(Y) | |
| 23: | GEQ(n__s(X),n__s(Y)) | → GEQ(activate(X),activate(Y)) | |
| 24: | GEQ(n__s(X),n__s(Y)) | → ACTIVATE(X) | |
| 25: | GEQ(n__s(X),n__s(Y)) | → ACTIVATE(Y) | |
| 26: | DIV(s(X),n__s(Y)) | → IF(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0) | |
| 27: | DIV(s(X),n__s(Y)) | → GEQ(X,activate(Y)) | |
| 28: | DIV(s(X),n__s(Y)) | → ACTIVATE(Y) | |
| 29: | IF(true,X,Y) | → ACTIVATE(X) | |
| 30: | IF(false,X,Y) | → ACTIVATE(Y) | |
| 31: | ACTIVATE(n__0) | → 0# | |
| 32: | ACTIVATE(n__s(X)) | → S(activate(X)) | |
| 33: | ACTIVATE(n__s(X)) | → ACTIVATE(X) | |
| 34: | ACTIVATE(n__div(X1,X2)) | → DIV(activate(X1),X2) | |
| 35: | ACTIVATE(n__div(X1,X2)) | → ACTIVATE(X1) | |
| 36: | ACTIVATE(n__minus(X1,X2)) | → MINUS(X1,X2) | |